package com.ibeeking.found.upms.b.rest.service;

import com.ibeeking.found.common.entity.LoginOpenUserDTO;
import com.ibeeking.found.upms.service.common.bo.OpenUserBO;
import com.ibeeking.found.upms.service.common.param.OpenUserParam;
import com.ibeeking.found.upms.service.common.query.OpenUserPageQuery;
import com.ibeeking.found.upms.service.common.vo.OpenUserPageVO;
import com.ibeeking.found.upms.service.common.vo.OpenUserVO;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

import java.util.List;

/**
 * @ClassName IOpenUserService
 * @Description
 * @Author ibeeking
 * @Date 2021-03-31 16:56
 **/
public interface IOpenUserService {
    Page<OpenUserPageVO> pageList(OpenUserPageQuery query);

    Boolean add(OpenUserParam param, String tenantId);

    Boolean modify(OpenUserParam param);

    OpenUserVO view(Long id);

    OpenUserBO queryById(Long id);

    Boolean changeStatus(Long id, Integer status);

    Boolean del(Long id);

    Boolean resetSecret(Long id, String tenantId);

    String showSecret(Long id);

    LoginOpenUserDTO queryLoginUser(String appId);

    List<String> queryApis(Long userId);
}
